|
operator delete[]function
<new>
void operator delete[] (void* ptr) throw (); void operator delete[] (void* ptr, const std::nothrow_t& nothrow_constant) throw(); void operator delete[] (void* ptr, void* voidptr2) throw(); Deallocate storage space of array The first and second versions deallocate the memory block pointed by ptr (if not-null), releasing the storage space previously allocated to it by a call to operator new[] and making that pointer location invalid.The third version does nothing. The second and third versions cannot be implicitly called by the operator expression (the delete[] operator calls once the function operator delete[] for each of its arguments). Although they can be called explicitly as operator new[] function calls, their default definitions serve no particular purpose - they are provided as counterparts for the operator new[] functions and called accordingly when done automatically. Global dynamic storage operator functions are special in the standard library:
operator delete[] can be called explicitly as a regular function, but in C++, delete is an operator with a very specific behavior: An expression with the delete operator, first calls the appropriate destructors for each element in its array (if needed), and then calls function operator delete[] to release the storage. Parameters
Return valuenoneExample
Output:
See also
|